package daily.kou2022_0228;
//543. 二叉树的直径
public class Num543_diameterOfBinaryTree {
    //存储最长路径
    private int max=0;
    public int diameterOfBinaryTree(TreeNode root) {
        //边界
        if (root==null||(root.left==null&&root.right==null)){
            //空节点或者只有一个节点路径为0
            return 0;
        }
        height(root);
        return max;
    }
    //递归求二叉树的高度
    private int height(TreeNode root){
        if (root==null){
            return 0;
        }
        //计算左子树高度
        int l=height(root.left);
        //计算右子树高度
        int r=height(root.right);
        max=Math.max(max,(l+r));
        return 1+Math.max(l,r);




    }






}
